package com.rnkrsoft.suyan.config.server.services.guide.domains;

import com.rnkrsoft.suyan.config.internal.enums.YesOrNo;
import com.rnkrsoft.suyan.config.protocol.v2.DataTypeEnum;
import com.rnkrsoft.suyan.config.protocol.v2.ParamType;
import com.rnkrsoft.suyan.config.server.ajax.session.LoginUserId;
import com.rnkrsoft.suyan.config.server.ajax.session.LoginUserName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.doc.annotation.ApidocElement;
import javax.doc.data.Request;
import java.io.Serializable;

/**
 * Created by woate on 2019/6/22.
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class CreateParamRequest extends Request implements LoginUserId, LoginUserName {
    @ApidocElement("机器编号")
    String machineId;
    @ApidocElement("参数名")
    String paramName;
    @ApidocElement(value = "参数类型", enumClass = ParamType.class)
    int paramType;
    @ApidocElement(value = "数据类型", enumClass = DataTypeEnum.class)
    int paramDataType;
    @ApidocElement(value = "是否加密参数", required = true, enumClass = YesOrNo.class)
    String paramEncrypt;
    @ApidocElement(value = "参数值", required = false, maxLen = 1024)
    String paramValue;
    @ApidocElement(value = "参数描述", required = false)
    String paramDesc;
    Integer loginUserId;
    String loginUserName;
}
